import 'package:flutter_base/base/controller/base_controller.dart';
import 'package:flutter_base/utils/loading/loading_utils.dart';
import 'package:get/get.dart';

class AccountSettingsLogic extends BaseController {
  // 绑定状态
  final phoneNumber = '178****0902'.obs; // 手机号
  final email = '23213213@qq.com'.obs; // 邮箱
  final isWeChatBound = false.obs; // 微信绑定状态
  final isQQBound = false.obs; // QQ绑定状态

  @override
  void onInit() {
    super.onInit();
    // 在这里初始化数据
    // 可以从API获取用户绑定信息
  }

  @override
  void onReady() {
    super.onReady();
    // 页面准备就绪后调用
  }

  // 绑定/修改手机号
  void onBindPhoneTap() {
    // 处理绑定/修改手机号点击事件
    if (phoneNumber.value.isNotEmpty) {
      // 已绑定，修改手机号
      LoadingUtils.showToast('修改手机号功能开发中');
    } else {
      // 未绑定，绑定手机号
      LoadingUtils.showToast('绑定手机号功能开发中');
    }
  }

  // 绑定/修改邮箱
  void onBindEmailTap() {
    // 处理绑定/修改邮箱点击事件
    if (email.value.isNotEmpty) {
      // 已绑定，修改邮箱
      LoadingUtils.showToast('修改邮箱功能开发中');
    } else {
      // 未绑定，绑定邮箱
      LoadingUtils.showToast('绑定邮箱功能开发中');
    }
  }

  // 绑定/解绑微信
  void onBindWeChatTap() {
    // 处理绑定/解绑微信点击事件
    if (isWeChatBound.value) {
      // 已绑定，解绑微信
      _unbindWeChat();
    } else {
      // 未绑定，绑定微信
      _bindWeChat();
    }
  }

  // 绑定/解绑QQ
  void onBindQQTap() {
    // 处理绑定/解绑QQ点击事件
    if (isQQBound.value) {
      // 已绑定，解绑QQ
      _unbindQQ();
    } else {
      // 未绑定，绑定QQ
      _bindQQ();
    }
  }

  // 绑定微信
  void _bindWeChat() {
    LoadingUtils.showLoading(status: '正在绑定微信...');
    
    // 模拟绑定过程
    Future.delayed(const Duration(seconds: 1), () {
      LoadingUtils.dismiss();
      isWeChatBound.value = true;
      LoadingUtils.showToast('微信绑定成功');
      update();
    });
  }

  // 解绑微信
  void _unbindWeChat() {
    LoadingUtils.showLoading(status: '正在解绑微信...');
    
    // 模拟解绑过程
    Future.delayed(const Duration(seconds: 1), () {
      LoadingUtils.dismiss();
      isWeChatBound.value = false;
      LoadingUtils.showToast('微信解绑成功');
      update();
    });
  }

  // 绑定QQ
  void _bindQQ() {
    LoadingUtils.showLoading(status: '正在绑定QQ...');
    
    // 模拟绑定过程
    Future.delayed(const Duration(seconds: 1), () {
      LoadingUtils.dismiss();
      isQQBound.value = true;
      LoadingUtils.showToast('QQ绑定成功');
      update();
    });
  }

  // 解绑QQ
  void _unbindQQ() {
    LoadingUtils.showLoading(status: '正在解绑QQ...');
    
    // 模拟解绑过程
    Future.delayed(const Duration(seconds: 1), () {
      LoadingUtils.dismiss();
      isQQBound.value = false;
      LoadingUtils.showToast('QQ解绑成功');
      update();
    });
  }
} 